BVB Source Codes

Micro purchase shopping rebate program participation official version v2.2 Show miao_orderAction.class.php Source code

Return Download Micro purchase shopping rebate program participation official version v2.2: download miao_orderAction.class.php Source code - Download Micro purchase shopping rebate program participation official version v2.2 Source code - Type:.php
  1. <?php
  2. class miao_orderAction extends baseAction
  3. {
  4.         function index()
  5.         {              
  6.                 $miao_order_mod = D('miao_order');     
  7.                 $keyword=isset($_GET['keyword'])?trim($_GET['keyword']):'';
  8.                 //搜索
  9.                 $where = '1=1';
  10.                 if ($keyword!='') {
  11.                         $where .= " AND seller_name LIKE '%$keyword%' OR order_code LIKE '%$keyword%' OR username LIKE '%$keyword%'";
  12.                         $this->assign('keyword', $keyword);
  13.                 }      
  14.                 import("ORG.Util.Page");
  15.                 $count = $miao_order_mod->where($where)->count();
  16.                 $p = new Page($count,20);
  17.                 $miao_order_list = $miao_order_mod->where($where)->limit($p->firstRow.','.$p->listRows)->order('order_time desc')->select();           
  18.                 $page = $p->show();
  19.                 $this->assign('page',$page);   
  20.                 $this->assign('miao_order_list',$miao_order_list);
  21.                 $this->display();
  22.         }
  23.         //修改
  24.         public function edit()
  25.         {
  26.                 $miao_order_mod = D('miao_order');
  27.                 if( isset($_GET['id']) ){
  28.                         $miao_order_id = isset($_GET['id']) && intval($_GET['id']) ? intval($_GET['id']) : $this->error(L('please_select'));
  29.                 }              
  30.                 $miao_order_info = $miao_order_mod->where('id='.$miao_order_id)->find();
  31.                 $this->assign('show_header', false);   
  32.                 $this->assign('miao_order_info',$miao_order_info);
  33.                 $this->display();
  34.         }
  35.         //更新
  36.         public function update()
  37.         {              
  38.                 if((!isset($_POST['id']) || empty($_POST['id']))) {
  39.                         $this->error('请选择要编辑的数据');
  40.                 }
  41.                 $miao_order_mod = D('miao_order');
  42.                 if(false === $data = $miao_order_mod->create()){
  43.                         $this->error($miao_order_mod->error());
  44.                 }
  45.                 $result = $miao_order_mod->save($data);
  46.                 if(false !== $result){
  47.                         $this->success(L('operation_success'), '', '', 'edit');
  48.                 }else{
  49.                         $this->error(L('operation_failure'));
  50.                 }
  51.         }
  52.         //获取订单
  53.         public function getorder(){
  54.                 $this->display();
  55.         }      
  56.         //采集59秒数据跳转页面
  57.         public function getorder_jump()
  58.         {
  59.                 $order_mod=D('miao_order');            
  60.                 $star_data= isset($_GET['star_data']) ? trim($_GET['star_data']) : '';
  61.                 $end_data = isset($_GET['end_data'])? trim($_GET['end_data']) :'';
  62.                 if(empty($star_data)||empty($end_data)){
  63.                         $this->collect_error('开始日期或者结束日期不能为空',U('miao_order/getorder'),'getorder');
  64.                 }              
  65.                 $star_ymd_data=date('Ymd',strtotime($end_data));
  66.                 $end_ymd_data=date('Ymd',strtotime($star_data));
  67.                 $tmp='';
  68.                 if($star_ymd_data>$end_ymd_data){
  69.                         $tmp=$end_ymd_data;
  70.                         $end_ymd_data=$star_ymd_data;
  71.                         $star_ymd_data=$tmp;
  72.                 }
  73.                 $pages = $end_ymd_data-$star_ymd_data;//总记录              
  74.                 $p = isset($_GET['p']) && intval($_GET['p']) ? intval($_GET['p']) : 1;//当前页              
  75.                 $now_date=$star_ymd_data+$p;   //要获取的当前日期      
  76.                 $miao_api = $this->miao_client();   //获取59秒api设置信息
  77.                 $order_report=$miao_api->ListOrderReport($now_date);
  78.                 $order_report_data=$order_report['orders']['order'];
  79.                 if(!empty($order_report_data)){
  80.                         if(IsTwoArray($order_report_data)){
  81.                                 $order_report_data=array($order_report_data);
  82.                         }
  83.                 }      
  84.                 $add_num=0;            
  85.                 $update_num=0;                 
  86.                 if(count($order_report_data)>0){
  87.                         foreach ($order_report_data as $item) {
  88.                                 $cashbac=cashback($item['commission'],$this->setting['cashback_rate'],$this->setting['integralback_rate']);
  89.                                 //获取用户名
  90.                                 if(is_array($item['outer_code'])){    //如果outcode为空的话,从服务器获取的内容是一个数组
  91.                                         $item['outer_code']=0;
  92.                                 }                              
  93.                                 $user_info_data=$this->user_mode->where("id='{$item['outer_code']}'")->find();                         
  94.                                 $data=array(
  95.                                 'uid'=>$item['outer_code'],        //暂时放这个             out_code
  96.                                 'username'=>$user_info_data['name'],
  97.                                 'order_id'=>$item['order_id'],
  98.                                 'order_code'=>$item['order_code'],
  99.                                 'seller_name'=>$item['seller_name'],
  100.                                 'order_time'=>$item['created'],
  101.                                 'item_price'=>$item['order_amount'],
  102.                                 'commission'=>$item['commission'],
  103.                                 'cash_back'=>$cashbac['cacheback'],   //返现,这里通过公共函数计算
  104.                                 'status'=>$item['status'],
  105.                                 'item_count'=>1
  106.                                 );                                     
  107.                                 $one_rel=$order_mod->where("order_id='{$item['order_id']}' and order_code='{$item['order_code']}'")->find();
  108.                                 //如果此数据存在则执行更新操作
  109.                                 if(count($one_rel)>0){
  110.                                         //查看看该订单是否已经确认 并更新完毕
  111.                                         if($data['status']=='有效'){
  112.                                                 if($one_rel['is_update']==0){
  113.                                                         //执行 update_cash_integral 方法
  114.                                                         $this->update_cash_integral($cashbac['cacheback'],$cashbac['integralback'],$data['uid']);                                                      
  115.                                                         $data['is_update']=1;  //1表示此数据已经返现了,再次同步的是不将不进行返现
  116.                                                 }
  117.                                         }
  118.                                         $order_mod->where("order_id='{$item['order_id']}' and order_code='{$item['order_code']}'")->save($data);
  119.                                         $update_num++;
  120.                                 }
  121.                                 else{  
  122.                                         if($data['status']=='有效'){                                 
  123.                                                 //执行 update_cash_integral 方法
  124.                                                 $this->update_cash_integral($cashbac['cacheback'],$cashbac['integralback'],$data['uid']);
  125.                                                 $data['is_update']=1;  //1表示此数据已经返现了,再次同步的是不将不进行返现
  126.                                         }                                      
  127.                                         $order_mod->add($data);
  128.                                         $add_num++;                            
  129.                                 }                      
  130.                                
  131.                         }      
  132.                 }              
  133.                 if ($p>=$pages) {
  134.                         //记录采集时间                           
  135.                         $this->collect_success('订单获取完成', '', 'getorder');
  136.                 } else {                       
  137.                         $this->collect_success('第 <em class="blue">'.$p.'</em> 页采集完成,'.$now_date.'插入<em class="blue">'.$add_num.'</em>条数据,更新<em class="blue">'.$update_num.'</em>条数据,共 <em class="blue">'.$pages.'</em> 页', U('miao_order/getorder_jump', array('star_data'=>$star_data,'end_data'=>$end_data,'p'=>$p+1)));
  138.                 }
  139.         }
  140.         //增加返现记录以及增加用户积分与金钱
  141.         private function update_cash_integral($money,$integral,$uid){
  142.                 //echo $money.'---'.$integral.'--'.$uid;
  143.                 $user_mode=$this->user_mode;           
  144.                 $user_info_mode=$this->user_info;      
  145.                
  146.                 $has_user=$user_info_mode->where("uid=$uid")->setInc('money',$money); // 增加用户金钱
  147.                 if($has_user){   //如果此用户存在的话执行操作
  148.                         $user_info_mode->where("uid=$uid")->setInc('integral',ceil($integral));  //增加用户积分
  149.                         //获取用户信息
  150.                         $user_rel=$user_mode->where("id=$uid")->field('id,name')->find();
  151.                         //更新返现记录表
  152.                         $cash_back_log=D('cash_back_log');
  153.                        
  154.                         $last_info=$cash_back_log->where('uid='.$uid.'')->order('id desc')->limit(1)->find();          
  155.                         if(count($last_info)>0){  //如果存在这条数据的换执行入库操作
  156.                                 $log_data=array(
  157.                                         'uid'=>$uid,
  158.                                         'uname'=>$user_rel['name'],
  159.                                         'before_money'=>$last_info['after_money'],
  160.                                         'after_money'=>$last_info['after_money']+$money,
  161.                                         'in_money'=>$money,
  162.                                         'out_money'=>0,
  163.                                         'type'=>1,
  164.                                         'time'=>time(),
  165.                                         'info'=>'返现收入',
  166.                                         'sign'=>md5($uid.$user_rel['name'].time()),
  167.                                 );
  168.                                
  169.                         }
  170.                         else{
  171.                                 $log_data=array(
  172.                                         'uid'=>$uid,
  173.                                         'uname'=>$user_rel['name'],
  174.                                         'before_money'=>0,
  175.                                         'after_money'=>$money,
  176.                                         'in_money'=>$money,
  177.                                         'out_money'=>0,
  178.                                         'type'=>1,
  179.                                         'info'=>'返现收入',
  180.                                         'time'=>time()
  181.                                 );
  182.                         }
  183.                         $cash_back_log->add($log_data);
  184.                 }
  185.         }      
  186.         //采集成功跳转
  187.         public function collect_success($message, $jump_url, $dialog='')
  188.         {
  189.                 $this->assign('message', $message);
  190.                 if(!empty($jump_url)) $this->assign('jump_url', $jump_url);
  191.                 if(!empty($dialog)) $this->assign('dialog', $dialog);
  192.                 $this->display(APP_PATH.'Tpl/'.C('DEFAULT_THEME').'/miao_order/collect_success.html');
  193.                 exit;
  194.         }
  195.         public function collect_error($message,$jump_url,$dialog='')
  196.         {
  197.                 $this->assign('message', $message);            
  198.                 if(!empty($jump_url)) $this->assign('jump_url', $jump_url);
  199.                 if(!empty($dialog)) $this->assign('dialog', $dialog);
  200.                 $this->display(APP_PATH.'Tpl/'.C('DEFAULT_THEME').'/miao_order/collect_error.html');           
  201.                 exit;          
  202.         }
  203. }
  204. ?>
downloadmiao_orderAction.class.php Source code - Download Micro purchase shopping rebate program participation official version v2.2 Source code
Related Source Codes/Software:
1 v1.0 qq2 baidu video search program - Website all can change information and advertising... 2016-11-07
ESFramework P2P communication Demo - This demo is in ESFramework. Demos. FileTransfer b... 2016-11-07
Online games network thief collection source - 798123 online game network 1, without updates, di... 2016-11-07
Dynamic group of ESFramework Demo - This demo illustrates the dynamic group created an... 2016-11-07
Deep learning v3.0.8 site system - By articles, downloads, pictures, the main functio... 2016-11-07
For Linux v2.0.6 Sphinx full-text search engine -   &Nbsp;Sphinx is a SQL-based full-text searc... 2016-11-07
Sphinx full-text search engine for Windows v2.0.6 - Sphinx is a SQL-based full-text search engine, do ... 2016-11-07
Eastern standard internal SEO recording system v2.0 network marketing - This SEO system for use within the enterprise syst... 2016-11-07
Support a wheat shortened urls and pure and fresh version of source code (SAE) v1.0 - This url shortening for taobao guest, safe, green,... 2016-11-07
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top