做了个订单批量打款

第一种方式
思路:

  1. 判断需要打款订单前面添加复选框再添加一个全选按钮和批量打款事件按钮
  2. 点击批量打款按钮触发事件获取checked选中订单发送ajax处理数据
    html代码:
//添加一个全选按钮和批量打款事件按钮
<input type="checkbox" class="all-select" style="margin-left: 18px;">全选
<button class="btn btn-success" id="money-all" style="margin-left: 8px;">批量打款</button>

//遍历订单判断需要打款订单前面添加复选框
<eq name="vo.state" value="10">
        <td>
            <input type="checkbox" class="select" value="{$vo.id}">
            {$vo.id}
        </td>
<else/>
    <td colspan="1">{$vo.id}</td>
</eq>

js代码

//多选控制
$('.all-select').change(function () {
     if($(this).attr('checked') == 'checked'){
         $('.all-select').prop('checked','checked');
         $('.select').prop('checked','checked');
     }else{
         $('.all-select').prop('checked','');
         $('.select').prop('checked','');
     }
 });
//批量打款
$('#money-all').click(function(){
    var ids = [];
    $('.select:checked').each(function(index,value){
        ids[index] = $(this).val();
    });

    if(ids.length == 0){
        alert('没有打款条目');
        return false;
    }
    $.ajax({
        url:"http://"+document.domain+"/index.php/Admin/Yushou/guandaimais",
        dataType:"json",
        data:{
            ids:ids,
        },
        type:"POST",
        success:function(req){
            console.log(req);
            if(req['code'] == 0){
                alert('批量打款错误');
            }else{
                window.location.href = req.url+"?ids="+req.ids;
            }
        },
        error:function(){
            alert('网络错误');
        }
    });
});

php代码

public function guandaimais(){
       $ids = I('ids');
       if($ids){
           $url = __ROOT__.'/index.php/Admin/Yushou/guandaimai.html';
           echo json_encode(array('code'=>1,'url'=>$url,'ids'=>$ids));
       }else{
           echo json_encode(array('code'=>0));
       }
   }

这里跳了一个定时页面

<form class="form-horizontal form-bordered" enctype="multipart/form-data" method="post" action="{:U('guandaimai_post')}">
     <div class="panel panel-default">
         <div class="panel-heading">
             <h4 class="panel-title">代卖打款</h4>
             <p>代卖打款</p>
         </div><!-- panel-heading -->
         <div class="panel-body">
             <div class="form-group">
                 <label for="yingdakuan_time" class="col-sm-2 control-label">应打款时间</label>
                 <div class="col-sm-5">
                     <input type="text" class="form-control" value="<php>echo date('Y-m-d H:i:s');</php>" name="yingdakuan_time" id="yingdakuan_time">
                 </div>
             </div>
         </div><!-- panel-body -->
         <div class="panel-footer">
             <input type="hidden" id="ids" name="order_ids" value="">
             <button class="btn btn-success">提交</button>
         </div>
     </div><!-- panel -->
     <!-- CONTENT GOES HERE -->
 </form>

php代码

    public function guandaimai_post(){
        $Order=M('Order');
        $Users=M('Users');
        $Daimaijie=M('Daimaijie');
        $idstr = I('order_ids');
        $yingdakuan_time = I('yingdakuan_time');
        $caozuo_name=session('nickname');
        $caozuo_id=session('uid');
        $caozuo_hao=session('username');
        if(empty($caozuo_hao)){
            $this->redirect('Login/login');
        }
        if($idstr){
       		//批量
            $ids = explode(',', $idstr);
            $map_o = array(
                'id' => array('in',$ids),
            );
            $data_o = $Order->where($map_o)->select();
            $data = array();
            $data['caozuo_id'] = $caozuo_id;
            $data['yingdakuan_time'] = $yingdakuan_time;
            $data['caozuo_name'] = $caozuo_name;
            $data['caozuo_hao'] = $caozuo_hao;
            $data['posttime'] = date('Y-m-d H:i:s');
            $data['state'] = 1;
            foreach($data_o as $k => $v){
                $data['order_id'] =$v['id'];
                $data['order_hao'] = $v['order_id'];
                $data['daimai_tuikuan'] = number_format($v['daimai_tuikuan'],2,'.',"");
                $data['order_title'] = $v['name'];
                $data['qian'] = number_format($v['dai_qian'],2,"." ,"");
                $data['user_id'] = $v['user_id'];
                $data_u = $Users->where(array('id'=>array('eq',$v['user_id'])))->getField('username');
                if($data_u == ''){
                    $data_u = "";
                }
                $data['user_name'] = $data_u;
                $result = $Daimaijie->add($data);
                if($result){
                    $data_o = array(
                        'daimai_jie' => 1,
                        'yingdakuan_time' => $yingdakuan_time,
                    );
                    $res[$k] = $Order->where(array('id'=>array('eq',$v['id'])))->save($data_o);

                }

            }
            $count = count($res);
            if($count>0){
                $this->redirect('Yushou/daimailist',array('count'=>$count));
            }else{
                $this->error('改变订单状态失败','',3);
            }

        }else{
        	//单个订单
            $order_id=I('order_id');
            $order_hao=I('order_hao');
            $posttime=date("Y-m-d H:i:s");
            $order_title=I('order_title');
            $user_id = I('user_id');
            $user_name = I('user_name');
            $yingdakuan_time=I('yingdakuan_time');
            $map_o=array(
                'id'=>array('eq',$order_id)
            );
            $data_order=$Order->where($map_o)->find();
            $dai_qian=number_format($data_order['dai_qian'],2,".","");
            $daimai_tuikuan=number_format($data_order['daimai_tuikuan'],2,'.',"");
            
            $Daimaijie=M('Daimaijie');
            $data = array(
                'order_id'=>$order_id,
                'order_hao'=>$order_hao,
                'caozuo_id'=>$caozuo_id,
                'yingdakuan_time'=>$yingdakuan_time,
                'caozuo_name'=>$caozuo_name,
                'caozuo_hao'=>$caozuo_hao,
                'daimai_tuikuan'=>$daimai_tuikuan,
                'order_title'=>$order_title,
                'qian'=>$dai_qian,
                'posttime'=>$posttime,
                'user_id'=>$user_id,
                'user_name'=>$user_name,
                'state'=>1,
            );
            $result = $Daimaijie->add($data);
            if($result){
                $data_o=array(
                    'daimai_jie'=>1,
                    'yingdakuan_time'=>$yingdakuan_time,
                );
                $res=$Order->where($map_o)->save($data_o);
                if($res){
                    $this->redirect('Yushou/daimailist');
                }else{
                    $this->error('改变订单状态失败','',3);
                }

            }else{
                $this->error('退款失败','',3);  
            }
        }
    }
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值