model = new \app\admin\model\cost\CostBillMouth; } /** * 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法 * 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑 * 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改 */ /** * 查看 */ public function index() { // printer_open //设置过滤方法 $this->request->filter(['strip_tags']); if ($this->request->isAjax()) { //如果发送的来源是Selectpage,则转发到Selectpage if ($this->request->request('keyField')) { return $this->selectpage(); } $get=$this->request->get('filter'); $where_and=['is_delete'=>'0','pay_status'=>'1']; if (!empty($this->auth->village)){ $where_and['village_id']=['in',$this->auth->village]; // dump($where_and); } list($where, $sort, $order, $offset, $limit) = $this->buildparams(); if (!empty($get)){ $get=json_decode($get,true); if (isset($get['village_id'])){ $where_and['village_id']=['eq',$get['village_id']]; } if (isset($get['item_id'])){ $where_and['item_id']=['eq',$get['item_id']]; } if (isset($get['hu.usesr_name'])){ $get_huid=\app\admin\model\village\VillageHu::where('usesr_name','like','%'.$get['hu.usesr_name'].'%')->field('id')->select(); $hu_id=array_column($get_huid,'id'); $where_and['hu_id']=['in',$hu_id]; } $total = $this->model ->where($where_and) // ->where($where) ->order('pay_time desc') ->count(); $list = $this->model ->where($where_and) //->where($where) ->with(['village','dong','danyuan','hu','item']) ->order('pay_time desc') ->limit($offset, $limit) ->select(); }else{ $total = $this->model ->where($where) ->where($where_and) ->order('pay_time desc') ->count(); $list = $this->model ->where($where) ->where($where_and) ->with(['village','dong','danyuan','hu','item','village.property']) ->order('pay_time desc') ->limit($offset, $limit) ->select(); } foreach ($list as $k=>$v){ $list[$k]['house']=$v['village']['property']['p_name']." ".$v['village']['name']." ".$v['dong']['name']." ".$v['danyuan']['name']; } $list = collection($list)->toArray(); $result = array("total" => $total, "rows" => $list); return json($result); } return $this->view->fetch(); } public function village(){ if (!empty($this->auth->village)){ $where_and['village_id']=['in',$this->auth->village]; // dump($where_and); } $where_and['is_delete']=['eq','0']; $groupList =Village::where($where_and)->field('id as value,v_name as name')->order('id asc')->select(); $this->success('', null, $groupList); } public function item_id(){ $id = $this->request->get('id'); if (!empty($this->auth->village)){ $where_and['village_id']=['in',$this->auth->village]; // dump($where_and); } $get_item=CostItem::where(['village_id'=>$id,'is_delete'=>'0'])->field('id as value,item')->select(); foreach ($get_item as $k=>$v){ if ($v['item']=='1'){ $get_item[$k]['name']='物业费'; }elseif($v['item']=='2'){ $get_item[$k]['name']='生活垃圾处理费'; }elseif($v['item']=='3'){ $get_item[$k]['name']='车位服务费'; }else{ $get_item[$k]['name']='未知'; } } $data = [ [ 'value'=>1,'item'=>'1','name'=>'水费', ], [ 'value'=>2,'item'=>'2','name'=>'电费', ], [ 'value'=>999999999,'item'=>'999999999','name'=>'车位服务费', ] ]; $data=array_merge($data,$get_item); $this->success('', null, $data); } public function mouth($ids = null){ // cost/cost_bill_mouth/mouth?select=1&area-operate=%3D&village_id=&hu.usesr_name-operate=LIKE&hu.usesr_name=&pay_time-operate=RANGE&pay_time= // cost/cost_bill_mouth/mouth?select=0&id=91,1 $select=$this->request->get('select'); $where_and=['is_delete'=>'0','pay_status'=>'1']; if ($select=='1'){//需要自己检索 $get=$this->request->get(); if (!empty($get['village_id']) && !empty($get['village_id'])){ $where_and['village_id']=$get['village_id']; } if (isset($get['item_id']) && !empty($get['item_id'])){ $where_and['item_id']=['eq',$get['item_id']]; } if (isset($get['pay_time'])&& !empty($get['pay_time'])){ //echo $get['pay_time'];exit; $pay_time=explode(' - ',$get['pay_time']); $where_and['pay_time']=['between',[strtotime($pay_time['0']),strtotime($pay_time['1'])]]; } if (isset($get['hu.usesr_name']) && !empty($get['hu.usesr_name'])){ $get_huid=\app\admin\model\village\VillageHu::where('usesr_name','like','%'.$get['hu.usesr_name'].'%')->field('id')->select(); $hu_id=array_column($get_huid,'id'); $where_and['hu_id']=['in',$hu_id]; } }else{//传值id $id=$this->request->get('id'); $ids=explode(',',$id); $where_and['id']=['in',$ids]; } $list = $this->model ->where($where_and) ->with(['village','dong','danyuan','hu','item','village.property']) ->order('pay_time desc') ->select(); foreach ($list as $k=>$v){ if ($v['item_id']=='1'){ $list[$k]['item_name']='水费'; }elseif($v['item_id']=='2'){ $list[$k]['item_name']='电费'; }elseif($v['item_id']=='9999999999'){ $list[$k]['item_name']='车位服务费'; }else{ // $get_itme=CostItem::where('id',$row['item_id'])->field('item')->find(); if ($v['item']['item']=='1'){ $list[$k]['item_name']='物业费'; }elseif ($v['item']['item']=='2'){ $list[$k]['item_name']='生活垃圾处理费'; }elseif ($v['item']['item']=='3'){ $list[$k]['item_name']='车位服务费'; }else{ $list[$k]['item_name']='未知'; } } $list[$k]['pay_date']=date('Y-m-d H:i:s',$v['pay_time']); } $time=date('Y-m-d H:i:s'); $this->view->assign('time',$time); $this->view->assign('list',$list); return $this->view->fetch(); } }