|
|
@ -30,6 +30,13 @@ class ExchangeController extends BaseController{
|
|
|
|
|
|
|
|
|
|
|
|
$request = json_decode(base64_decode(file_get_contents("php://input")),true);
|
|
|
|
$request = json_decode(base64_decode(file_get_contents("php://input")),true);
|
|
|
|
$request = SafeFilter($request);
|
|
|
|
$request = SafeFilter($request);
|
|
|
|
|
|
|
|
/* if (!isset($request['api_ver'])) {
|
|
|
|
|
|
|
|
$payPage = "pay_way_v1";
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
$payPage = "pay_way_v".$request['api_ver'];
|
|
|
|
|
|
|
|
} */
|
|
|
|
|
|
|
|
$payPage = "pay_way";
|
|
|
|
|
|
|
|
|
|
|
|
if(!is_numeric($request['price'])) {
|
|
|
|
if(!is_numeric($request['price'])) {
|
|
|
|
$this->set_message(0,"fail","金额必须是数字");
|
|
|
|
$this->set_message(0,"fail","金额必须是数字");
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -37,15 +44,11 @@ class ExchangeController extends BaseController{
|
|
|
|
$this->set_message(0,"fail","金额不正确");
|
|
|
|
$this->set_message(0,"fail","金额不正确");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$request['price'] = abs($request['price']);
|
|
|
|
$request['price'] = abs($request['price']);
|
|
|
|
$request['is_create_ordernumer'] = $request['is_create_ordernumer']?:1;//1:苹果内购 2:第三方app支付
|
|
|
|
$request['is_create_ordernumer'] = $request['is_create_ordernumer']?:1; // 1:苹果内购 2:第三方app支付
|
|
|
|
if(C('UC_SET')==1){
|
|
|
|
if (C ( 'UC_SET' ) == 1) {
|
|
|
|
|
|
|
|
if (! is_array ( find_uc_account ( $request ['account'] ) )) {
|
|
|
|
if(!is_array(find_uc_account($request['account']))){
|
|
|
|
$this->set_message ( 0, "fail", "Uc用户暂不支持" );
|
|
|
|
|
|
|
|
|
|
|
|
$this->set_message(0,"fail","Uc用户暂不支持");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//添加禁用处理
|
|
|
|
//添加禁用处理
|
|
|
|
if($request['code'] == 1){
|
|
|
|
if($request['code'] == 1){
|
|
|
@ -74,10 +77,9 @@ class ExchangeController extends BaseController{
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
|
|
|
|
|
|
|
|
file_put_contents("./Application/Sdk/OrderNo/".$request['user_id']."-".$request['game_id'].".txt",think_encrypt(json_encode($request)));
|
|
|
|
file_put_contents("./Application/Sdk/OrderNo/".$request['user_id']."-".$request['game_id'].".txt",think_encrypt(json_encode($request)));
|
|
|
|
echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>'http://' . $_SERVER ['HTTP_HOST'].'/sdk.php?s=/Spend/pay_way&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1')));exit;
|
|
|
|
echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>'http://' . $_SERVER ['HTTP_HOST'].'/sdk.php?s=/Spend/'.$payPage.'&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1')));exit;
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
|
|
|
|
|
|
|
|
$extend_data = M('spend','tab_')->where(array('extend'=>$request['extend'],'pay_status'=>1,'game_id'=>$request['game_id']))->find();
|
|
|
|
$extend_data = M('spend','tab_')->where(array('extend'=>$request['extend'],'pay_status'=>1,'game_id'=>$request['game_id']))->find();
|
|
|
|
if($extend_data){
|
|
|
|
if($extend_data){
|
|
|
|
$this->set_message(1089,"fail","订单号重复,请关闭支付页面重新支付");
|
|
|
|
$this->set_message(1089,"fail","订单号重复,请关闭支付页面重新支付");
|
|
|
@ -86,66 +88,39 @@ class ExchangeController extends BaseController{
|
|
|
|
file_put_contents("./Application/Sdk/Scheme/".$request['game_id'].".txt",$request['scheme']);
|
|
|
|
file_put_contents("./Application/Sdk/Scheme/".$request['game_id'].".txt",$request['scheme']);
|
|
|
|
|
|
|
|
|
|
|
|
if(get_game_appstatus2($request['game_id'])){ /* 第三方支付 */
|
|
|
|
if(get_game_appstatus2($request['game_id'])){ /* 第三方支付 */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$prefix = $request['code'] == 1 ? "SP_" : "PF_"; // SP
|
|
|
|
$prefix = $request['code'] == 1 ? "SP_" : "PF_"; // SP
|
|
|
|
|
|
|
|
|
|
|
|
$out_trade_no = $prefix.date('Ymd').date('His').sp_random_string(4);
|
|
|
|
$out_trade_no = $prefix.date('Ymd').date('His').sp_random_string(4);
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_order_number'] = $out_trade_no;
|
|
|
|
$request['pay_order_number'] = $out_trade_no;
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_status'] = 0;
|
|
|
|
$request['pay_status'] = 0;
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_way'] = 7;
|
|
|
|
$request['pay_way'] = 7;
|
|
|
|
|
|
|
|
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
|
|
|
|
// pp($request);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file_put_contents("./Application/Sdk/OrderNo/".$request['user_id']."-".$request['game_id'].".txt",think_encrypt(json_encode($request)));
|
|
|
|
file_put_contents("./Application/Sdk/OrderNo/".$request['user_id']."-".$request['game_id'].".txt",think_encrypt(json_encode($request)));
|
|
|
|
echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>'http://' . $_SERVER ['HTTP_HOST'].'/sdk.php?s=/Spend/pay_way&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1')));exit;
|
|
|
|
echo base64_encode(json_encode(array('status'=>200,'out_trade_no'=>$out_trade_no,'img'=>'http://' . $_SERVER ['HTTP_HOST'].'/sdk.php?s=/Spend/'.$payPage.'&user_id='.$request['user_id'].'&game_id='.$request['game_id'].'&type=1')));exit;
|
|
|
|
|
|
|
|
// 只走第三方支付 不走苹果支付
|
|
|
|
}elseif(!get_game_appstatus2($request['game_id'])&&$request['is_create_ordernumer']==1){ /* 苹果支付 */
|
|
|
|
}elseif(!get_game_appstatus2($request['game_id'])&&$request['is_create_ordernumer']==1){ /* 废弃 苹果支付 */
|
|
|
|
|
|
|
|
|
|
|
|
#获取订单信息
|
|
|
|
#获取订单信息
|
|
|
|
|
|
|
|
|
|
|
|
$prefix = $request['code'] == 1 ? "SP_" : "PF_";
|
|
|
|
$prefix = $request['code'] == 1 ? "SP_" : "PF_";
|
|
|
|
|
|
|
|
|
|
|
|
$out_trade_no = $prefix.date('Ymd').date('His').sp_random_string(4);
|
|
|
|
$out_trade_no = $prefix.date('Ymd').date('His').sp_random_string(4);
|
|
|
|
|
|
|
|
|
|
|
|
$data = array("status"=>200,"out_trade_no"=>$out_trade_no,'is_third_app_pay'=>0);
|
|
|
|
$data = array("status"=>200,"out_trade_no"=>$out_trade_no,'is_third_app_pay'=>0);
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_order_number'] = $out_trade_no;
|
|
|
|
$request['pay_order_number'] = $out_trade_no;
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_status'] = 0;
|
|
|
|
$request['pay_status'] = 0;
|
|
|
|
|
|
|
|
|
|
|
|
$request['pay_way'] = 7;
|
|
|
|
$request['pay_way'] = 7;
|
|
|
|
|
|
|
|
|
|
|
|
$request['title'] = $request['productId'];
|
|
|
|
$request['title'] = $request['productId'];
|
|
|
|
|
|
|
|
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
$request['spend_ip'] = get_client_ip();
|
|
|
|
|
|
|
|
|
|
|
|
if($request['code'] == 1 ){
|
|
|
|
if($request['code'] == 1 ){
|
|
|
|
|
|
|
|
|
|
|
|
#TODO添加消费记录
|
|
|
|
#TODO添加消费记录
|
|
|
|
|
|
|
|
|
|
|
|
$this->add_spend($request);
|
|
|
|
$this->add_spend($request);
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
|
|
|
|
|
|
|
|
#TODO添加平台币充值记录
|
|
|
|
#TODO添加平台币充值记录
|
|
|
|
|
|
|
|
|
|
|
|
$this->add_deposit($request);
|
|
|
|
$this->add_deposit($request);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
echo base64_encode(json_encode($data));
|
|
|
|
echo base64_encode(json_encode($data));
|
|
|
|
|
|
|
|
|
|
|
|
}elseif(!get_game_appstatus2($request['game_id'])&&$request['is_create_ordernumer']==2){
|
|
|
|
}elseif(!get_game_appstatus2($request['game_id'])&&$request['is_create_ordernumer']==2){
|
|
|
|
$data = array("status"=>200,"is_third_app_pay"=>1);
|
|
|
|
$data = array("status"=>200,"is_third_app_pay"=>1);
|
|
|
|
echo base64_encode(json_encode($data));
|
|
|
|
echo base64_encode(json_encode($data));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|