getFilter($params); $where[] = ['target_type','=' ,2]; $query = self::alias('mwd') ->leftJoin('user us','mwd.user_id=us.user_id') ->leftJoin('member_cooperation_coupon mcc','mwd.code_id=mcc.id') ->where($where) ->field('mwd.id,mwd.user_id,mwd.target_id,mwd.create_time,mwd.code_id,mwd.check_status,mwd.use_end_time,us.nick_name,us.mobile,mcc.code') ->order('mwd.id desc'); if ($toExport == true){ $query = $query->select(); }else{ $query = $query->paginate(15); } return $query->each(function (&$item) use ($t_now){ if ($item['check_status'] == 0 && strtotime($item['use_end_time'])< $t_now){ $item['has_expired'] = 1; }else{ $item['has_expired'] = 0; } }); } public function getFilter($params){ $where[] = ['mwd.target_id','=',$params['targetId']]; !empty($params['mobile']) && $where[] = ['us.mobile','like','%'.$params['mobile'].'%']; //核销状态 if (isset($params["checkStatus"]) && in_array($params['checkStatus'],[0,1])){ $where[] = ['mwd.check_status','=',$params['checkStatus']]; } //是否已过期 if (isset($params["hasExpired"]) && $params['hasExpired'] == 1){ $where[] = ['mwd.check_status','=',0]; $where[] = ['mwd.use_end_time','<',date('Y-m-d')]; } if (isset($params["hasExpired"]) && $params['hasExpired'] == 0){ $where[] = ['mwd.check_status','=',1]; } //领取时间 if(!empty($params['betweenTime'])){ $times = between_time_format($params['betweenTime']); $where[] = ['mwd.create_time','between',[$times['start_time'],$times['end_time']]]; } return $where; } /** * 异业福利领取记录导出 * @param $param * @return array */ public function diffwDrawExportData($param){ $data['header'] = ['领取用户昵称','用户手机号','领取时间', '领取券码','核销状态','是否过期']; $data['filename'] = '异业福利领取明细'; $data['data'] = []; $items = $this->getLists($param,true); $datas = []; foreach ($items as $item){ $temp = []; $temp['nick_name'] = $item['nick_name']; $temp['mobile'] = $item['mobile']; $temp['create_time'] = $item['create_time']; $temp['code'] = $item['code']; $temp['check_status'] = $item['check_status']?'已核销':'未核销'; $temp['has_expired'] = $item['has_expired']?'已过期':'未过期'; $datas[] = $temp; } $data['data'] = $datas; return $data; } }