public function index($search) { $sample_no = $search['sample_no']; $chinese_name = $search['chinese_name']; $paginate = Paginate::instance(); $sample_list = Sample::find('sample_no like ? and chinese_name like ?', "%{$sample_no}%", "%{$chinese_name}%")->paginate($paginate, true); $sample_work_cost_list_grp = array(); if ($sample_list) { $sample_work_cost_list = SampleWorkCost::find('sample_id in ?', array_column($sample_list, 'id'))->all(true); $sample_work_cost_list_grp = array_group($sample_work_cost_list, 'sample_id'); } foreach ($sample_list as $key => $value) { if (!$sample_work_cost_list_grp[$value['id']]) { unset($sample_list[$key]); } else { $sample_list[$key]['cost_list'] = $sample_work_cost_list_grp[$value['id']]; $sample_list[$key]['cost_list'] = array_group($sample_list[$key]['cost_list'], 'technic_flow_id', true); } } $technic_flow_list = (new SingleSample())->getPropertiesDefine('technic_flow_id_list')['options']; return array('search' => $search, 'paginate' => $paginate, 'sample_list' => $sample_list, 'technic_flow_list' => $technic_flow_list); }
public function searchSingleSample($get) { $sample = Sample::findOneByPk($get['id']); $tmp = SuiteSampleMapSingleSample::find('suite_sample_id = ?', $get['id'])->all(true); $single_sample_id_list = array_column($tmp, 'single_sample_id'); $paginate = Paginate::instance(); $paginate->setPageSize(8); if ($get['sample_no']) { $no = addslashes($get['sample_no']); $all_single_sample_list = Sample::find("sample_no LIKE '%{$no}%' AND sample_type=?", GlobalConf::SAMPLE_TYPE_SINGLE)->paginate($paginate); } else { $all_single_sample_list = Sample::find('sample_type=?', GlobalConf::SAMPLE_TYPE_SINGLE)->paginate($paginate); } return array('search' => $get, 'single_sample_id_list' => $single_sample_id_list, 'sample' => $sample, 'paginate' => $paginate, 'all_single_sample_list' => $all_single_sample_list); }