|
@@ -0,0 +1,143 @@
|
|
|
+<?php
|
|
|
+namespace Active\Src;
|
|
|
+
|
|
|
+use Dever;
|
|
|
+use Agent\Lib\Core;
|
|
|
+
|
|
|
+Class Api extends Core {
|
|
|
+
|
|
|
+ public function index(){
|
|
|
+ $id = Dever::input('id');
|
|
|
+ $data = Dever::db('active/info')->find($id);
|
|
|
+ $member = Dever::db('agent/member')->find($this->uid);
|
|
|
+ $data['member_name'] = $member['name'];
|
|
|
+ $data['member_mobile'] = $member['mobile'];
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
+ public function confirm(){
|
|
|
+ $id = Dever::input('id');
|
|
|
+ if(!$id){
|
|
|
+ Dever::alert('活动id不能为空');
|
|
|
+ }
|
|
|
+ $num = Dever::input('num');
|
|
|
+ if(!$num){
|
|
|
+ Dever::alert('购买数量不能为空');
|
|
|
+ }
|
|
|
+ $data = Dever::db('active/info')->find($id);
|
|
|
+ $insert['active_id'] = $id;
|
|
|
+ $insert['mid'] = $this->uid;
|
|
|
+ $insert['num'] = $num;
|
|
|
+ $insert['price'] = $num * $data['price'];
|
|
|
+ $data = Dever::db('active/order')->getNum(array('mid'=>$this->uid,'active_id'=>$id));
|
|
|
+ if($data && $data['total'] && $data['tatal'] > 10){
|
|
|
+ Dever::alert('您已超过限购数量');
|
|
|
+ }
|
|
|
+ $insert['order_num'] = $this->getOrderId();
|
|
|
+ $ids = Dever::db('active/order')->insert($insert);
|
|
|
+
|
|
|
+ if($ids){
|
|
|
+ $info = Dever::db('active/order')->find($ids);
|
|
|
+ $active = Dever::db('active/info')->find($info['active_id']);
|
|
|
+ $param = array
|
|
|
+ (
|
|
|
+ 'project_id' => 6,
|
|
|
+ 'channel_id' => 1,
|
|
|
+ 'system_source' => 1,
|
|
|
+ 'account_id' => 8,
|
|
|
+ 'uid' => $this->uid,
|
|
|
+ 'name' => $active['name'],
|
|
|
+
|
|
|
+ 'cash' => $info['price'],
|
|
|
+ 'product_id' => $ids,
|
|
|
+ 'order_id' => $info['order_num'],
|
|
|
+ 'h5' => 1,
|
|
|
+ 'refer' => Dever::input('refer', 'test'),
|
|
|
+ );
|
|
|
+
|
|
|
+ $result = Dever::load('pay/api.pay', $param);
|
|
|
+ $result['order_num'] = $info['order_num'];
|
|
|
+ $result['order_id'] = $info['id'];
|
|
|
+
|
|
|
+ return $result;
|
|
|
+ }else{
|
|
|
+ Dever::alert('提交失败');
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function success_secure_api_token()
|
|
|
+ {
|
|
|
+ $project_id = Dever::input('pay_project_id');
|
|
|
+ $info = Dever::db('pay/project')->one($project_id);
|
|
|
+ if ($info) {
|
|
|
+ return $info['key'];
|
|
|
+ }
|
|
|
+ return 'agent_buy_dever_2020';
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function success_secure_api($param = array())
|
|
|
+ {
|
|
|
+ $this->success($param);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function success($param = array())
|
|
|
+ {
|
|
|
+ $send = $param ? $param : Dever::preInput('pay_');
|
|
|
+ $product_id = $send['pay_product_id'];
|
|
|
+ $order_id = $send['pay_order_id'];
|
|
|
+ $status = $send['pay_status'];
|
|
|
+ $cash = $send['pay_cash'];
|
|
|
+ $msg = $send['pay_msg'];
|
|
|
+
|
|
|
+ $order = Dever::db('active/order')->one(array('id' => $product_id, 'clear' => true));
|
|
|
+ if ($order && $status == 2) {
|
|
|
+ $update['pay_status'] = 2;
|
|
|
+ $update['where_id'] = $order['id'];
|
|
|
+ Dever::db('active/order')->update($update);
|
|
|
+ }
|
|
|
+
|
|
|
+ return 'ok';
|
|
|
+ }
|
|
|
+
|
|
|
+ public function job(){
|
|
|
+ $data = Dever::db('active/order')->state(array('status'=>1));
|
|
|
+ $time = time();
|
|
|
+ if($data){
|
|
|
+ foreach($data as $k => $v){
|
|
|
+ if ($v['cdate'] && $time-$v['cdate']>300){
|
|
|
+ Dever::db('active/order')->update(array('where_id'=>$v['id'],'set_status'=>3));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return 'ok';
|
|
|
+ }
|
|
|
+
|
|
|
+ public function GetList(){
|
|
|
+ $data['list'] = Dever::db('active/order')->getAll(array('mid'=>$this->uid));
|
|
|
+ foreach($data['list'] as $k => $v){
|
|
|
+ $data['list'][$k]['cdate'] = date('Y-m-d H:i',$v['cdate']);
|
|
|
+ if($v['status'] == 1){
|
|
|
+ $data['list']['status_name'] = '待支付';
|
|
|
+ }else{
|
|
|
+ $data['list']['status_name'] = '已完成';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function getOrderId()
|
|
|
+ {
|
|
|
+ $where['order_num'] = Dever::order('D');
|
|
|
+ $where['clear'] = true;
|
|
|
+ $state = Dever::db('active/order')->one($where);
|
|
|
+ if (!$state) {
|
|
|
+ return $where['order_num'];
|
|
|
+ } else {
|
|
|
+ return $this->getOrderId();
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|