function actionUsergroup() { $page = (int) $this->_context->get('page', 1); $username = $this->_context->username; $groupname = $this->_context->groupname; $rs = Radusergroup::find(); if ($username) { $rs->where('username = ?', $username); } if ($groupname) { $rs->where('groupname = ?', $groupname); } if ($deleted = $this->_context->deleted) { Radusergroup::meta()->deleteWhere('username = ? AND groupname = ?', $username, $groupname); return $this->msg($tip = '删除成功', url('manage::radius/usergroup')); } if ($this->_context->isPost()) { $post = $this->_context->post(); $orm = Radusergroup::find('username = ?', $post['username'])->getOne(); $orm->changeProps($post); $orm->save(); #dump($orm); return $this->msg($tip = '操作成功', url('manage::radius/usergroup')); } $this->_view['_UDI'] = 'manage::radius/index'; $rs->limitPage($page, 20); $this->_view['rs'] = $rs->getAll(); $this->_view['pg'] = $rs->getPag(); }
function actionNotify() { $root_dir = Q::ini('app_config/ROOT_DIR'); require_once $root_dir . Q::ini('appini/alipay_dir') . "lib/alipay_notify.class.php"; //计算得出通知验证结果 $alipayNotify = new AlipayNotify(Q::ini('appini/payment/alipay')); $verify_result = $alipayNotify->verifyNotify(); if ($verify_result) { //验证成功 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //请在这里加上商户的业务逻辑程序代 //——请根据您的业务逻辑来编写程序(以下代码仅作参考)—— //获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表 $out_trade_no = $_POST['out_trade_no']; //获取订单号 $trade_no = $_POST['trade_no']; //获取支付宝交易号 $total = $_POST['price']; //获取总价格 $rs = Invoice::find('order_number = ? AND trade_status != ?', $_POST['out_trade_no'], 'TRADE_FINISHED')->getOne(); if ($rs->id()) { if (!empty($total)) { $rs->total_fee = $total; } $rs->trade_no = $trade_no; $rs->trade_time = time(); $rs->trade_status = $_POST['trade_status']; $rs->buyer_email = isset($_POST['buyer_email']) ? $_POST['buyer_email'] : '0'; $rs->due_time = $rs->per_day * 24 * 3600 + $rs->trade_time; $rs->save(); $order = Order::find('order_id = ?', $rs->order_id)->getOne(); $order->status = 'pending'; $order->save(); } $buyer_email = $order->account->user_mail; if (Q::ini('appini/email_notify')) { Mail_Api::send('[' . Q::ini('appini/meta/title') . ']' . $order->name . '的账单状态[' . strip_tags($rs->status(false)) . ']', '当前状态:' . $rs->status(false) . ' 详情请登陆系统查看:' . Q::ini('appini/meta/url') . '/service/invoice', $buyer_email, '客户'); } if ($_POST['trade_status'] == 'WAIT_BUYER_PAY') { //该判断表示买家已在支付宝交易管理中产生了交易记录,但没有付款 //判断该笔订单是否在商户网站中已经做过处理(可参考“集成教程”中“3.4返回数据处理”) //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 echo "success"; //请不要修改或删除 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } else { if ($_POST['trade_status'] == 'WAIT_SELLER_SEND_GOODS') { //该判断表示买家已在支付宝交易管理中产生了交易记录且付款成功,但卖家没有发货 //判断该笔订单是否在商户网站中已经做过处理(可参考“集成教程”中“3.4返回数据处理”) //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 echo "success"; //请不要修改或删除 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } else { if ($_POST['trade_status'] == 'WAIT_BUYER_CONFIRM_GOODS') { //该判断表示卖家已经发了货,但买家还没有做确认收货的操作 //判断该笔订单是否在商户网站中已经做过处理(可参考“集成教程”中“3.4返回数据处理”) //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 echo "success"; //请不要修改或删除 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } else { if ($_POST['trade_status'] == 'TRADE_FINISHED') { //该判断表示买家已经确认收货,这笔交易完成 //判断该笔订单是否在商户网站中已经做过处理(可参考“集成教程”中“3.4返回数据处理”) //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 if ($rs->id()) { $order = Order::find('order_id = ?', $rs->order_id)->getOne(); $username = $order->username; $password = $order->password; $groupname = $order->groupname; if ($order->user_id != '10') { $radUser = Radcheck::find('username =?', $username)->getOne(); $radUser->username = $username; $radUser->attribute = 'Cleartext-Password'; $radUser->op = ':='; $radUser->value = $password; $radUser->save(); /* $test = QDB::getConn()->getOne("SELECT `groupname` FROM `radusergroup` WHERE `username` = '{$username}'"); if(!$test) { $radGroup_SQL = "INSERT INTO `radusergroup` (`username`, `groupname`, `priority`) VALUES ('{$username}', '{$groupname}', '1')"; }else { $radGroup_SQL = "UPDATE `radusergroup` SET `groupname` = '{$groupname}' WHERE `username` = '{$order->username}'"; } QDB::getConn()->execute($radGroup_SQL); */ $radGroup = Radusergroup::find('username =?', $order->username)->getOne(); $radGroup->username = $order->username; $radGroup->groupname = $order->groupname; $radGroup->priority = '1'; $radGroup->save(); } $order->status = 'approve'; $order->save(); /* if(Q::ini('appini/email_order_recv')) { Mail_Api::send('[收款通知]您收到来自'.$buyer_email.'的付款',Q::ini('appini/email_order_recv'),'站长'); } */ } echo "success"; //请不要修改或删除 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } else { //其他状态判断 echo "success"; //调试用,写文本函数记录程序运行情况是否正常 //logResult ("这里写入想要调试的代码变量值,或其他运行的结果记录"); } } } } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// } else { //验证失败 echo "fail"; //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } }