['project_id'], '%like%' => ['create_user'], ]; } /** * @notes 获取项目管理--计量支付列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2024/03/07 14:27 */ public function lists(): array { $params = $this->request->get(); $condition = []; if(isset($params['start_date']) && $params['start_date'] != '' && isset($params['end_date']) && $params['end_date'] != ''){ if(strtotime($params['end_date']) - strtotime($params['start_date']) >= 0){ $condition[] = ['date','between',[strtotime($params['start_date']),strtotime($params['end_date'])]]; } } return ManageMeteredPayment::where($this->searchWhere)->where($condition) ->field(['id', 'project_id', 'date', 'month_amount', 'month_pay', 'create_user']) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select()->each(function($data){ $project = ManageProject::field('project_name')->where('id',$data['project_id'])->findOrEmpty(); $data['project_name'] = $project['project_name']; //累计完成 $data['total_amount'] = ManageMeteredPayment::where('project_id',$data['project_id'])->sum('month_amount'); //累计支付 $data['total_pay'] = ManageMeteredPayment::where('project_id',$data['project_id'])->sum('month_pay'); }) ->toArray(); } /** * @notes 获取项目管理--计量支付数量 * @return int * @author likeadmin * @date 2024/03/07 14:27 */ public function count(): int { $params = $this->request->get(); $condition = []; if(isset($params['start_date']) && $params['start_date'] != '' && isset($params['end_date']) && $params['end_date'] != ''){ if(strtotime($params['end_date']) - strtotime($params['start_date']) >= 0){ $condition[] = ['date','between',[strtotime($params['start_date']),strtotime($params['end_date'])]]; } } return ManageMeteredPayment::where($this->searchWhere)->where($condition)->count(); } }