12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- <?php namespace Pay\Lib;
- use Dever;
- class Core
- {
- /**
- * 更新订单状态
- */
- public function updateOrder($order_id, $cash, $desc = '')
- {
- $db = Dever::db('pay/order');
- $info = $db->one(array('order_id' => $order_id, 'status' => 1));
- if ($info) {
- $param['where_id'] = $info['id'];
- $param['status'] = 2;
- $msg = '支付成功';
- if ($desc) {
- $param['status'] = 3;
- $param['status_desc'] = $desc;
- $msg = '支付失败||' . $desc;
- }
- $this->log($msg, $info);
- $db->update($param);
- } else {
- $this->log('支付失败', '错误的订单id:' . $order_id);
- }
- }
- /**
- * 更新订单的支付信息
- */
- protected function updateOrderParam($order_id, $data)
- {
- $db = Dever::db('pay/order');
- $info = $db->one(array('order_id' => $order_id, 'status' => 1));
- if ($info) {
- $param['where_id'] = $info['id'];
- $param['param'] = Dever::array_encode($data);
- $db->update($param);
- }
- }
- /**
- * 创建订单
- */
- protected function createOrder($uid, $username, $account_id, $product_id, $name, $cash, $type)
- {
- $db = Dever::db('pay/order');
- $order_id = Dever::order();
- $info = $db->one(array('order_id' => $order_id));
- if ($info) {
- return $this->createOrder();
- } else {
- $add['status'] = 1;
- $add['uid'] = $uid;
- $add['username'] = $username;
- $add['account_id'] = $account_id;
- $add['name'] = $name;
- $add['cash'] = $cash;
- $add['type'] = $type;
- $add['order_id'] = $order_id;
- $add['product_id'] = $product_id;
- $add['id'] = $db->insert($add);
- $msg = '发起支付';
- $this->log($msg, $add);
- }
- return $order_id;
- }
- /**
- * 获取回调url
- */
- protected function url($type, $account_id)
- {
- //$project = Dever::project('pay');
- //return $project['url'] . 'daemon/notify/'.$type.'.php';
- return Dever::url('api.notify?account_id=' . $account_id, 'pay');
- }
- /**
- * 写日志
- */
- protected function log($msg, $data = array())
- {
- if ($data) {
- $data = Dever::json_encode($data);
- $msg .= '||' . $data;
- /*
- $insert = $data;
- $insert['cdate'] = time();
- Dever::db('pay/order_log')->insert($insert);
- */
- }
- Dever::log($msg, 'pay');
- }
- }
|