<?php


namespace Home\Controller;

/**
 * 前台支付控制器
 */
class PayController extends HomeController {

	public function wxpayNotify(){
		$logs = date('Y-m-d H:i:s').': '.json_encode($_POST)."\r\n";
		file_put_contents('logs/wxpay/'.date('Y-m-d').'.log', $logs,FILE_APPEND);
		require_once VENDOR_PATH.'Wxpay/example/notify.php';
		$notify = new \PayNotifyCallBack();
		$notify->Handle(false);

	}

	public function alipayNotify(){
		$logs = date('Y-m-d H:i:s').': '.json_encode($_POST)."\r\n";
		file_put_contents('logs/alipay/'.date('Y-m-d').'.log', $logs,FILE_APPEND);
		require_once VENDOR_PATH.'Alipay/aop/AopClient.php';
		require_once VENDOR_PATH.'Alipay/config.php';

		$AopClient = new \AopClient();
		$alipay_public_key = $config['alipay_public_key'];
		$AopClient->alipayrsaPublicKey = $alipay_public_key;
		$verify_result = $AopClient->rsaCheckV1($_POST, $alipay_public_key, 'RSA2');
		file_put_contents('logs/alipay/'.date('Y-m-d').'.log', $verify_result."\r\n",FILE_APPEND);
		if(!$verify_result){
			die("fail");
		}


		if($_POST['trade_status']=='TRADE_SUCCESS' || $_POST['trade_status']=='TRADE_FINISHED'){
			$out_trade_no = $_POST['out_trade_no'];
			$trade_no = $_POST['trade_no'];
// 			file_put_contents('alipay_log.txt', 'ok',FILE_APPEND);


			if(substr($out_trade_no, 0,1)=='s'){
				getAvlBox($out_trade_no,'member'); //分配格子
// 				check_baocang($out_trade_no);
			}

			update_pay_success($out_trade_no, $trade_no); // 修改订单支付状态
			update_pay_type($out_trade_no, 'alipay');

			if(substr($out_trade_no, 0,1)=='c'){
				member_charge($out_trade_no);
			}

			echo "success";
		}else{
			echo "fail";
		}

	}
	

}