public function __construct($data = array()) { $this->setPropertiesDefine(array('work_process' => array('options' => function () { $tmp = WorkProcess::find()->all(true); return $tmp ? array_combine(array_column($tmp, 'id'), array_column($tmp, 'name')) : array(); }))); parent::__construct($data); }
public function info($get) { $id = $get['id']; $base_info = SampleProduceOrder::findOneByPk($id); $paginate = Paginate::instance(); $sample_list = SampleProduceOrderMapSamples::find('produce_order_id = ?', $id)->paginate($paginate); $sample_process_list = WorkProcess::find('work_stage_id=? AND state=?', WorkStage::SAMPLE_STATE_ID, WorkProcess::STATE_ENABLED)->all(); $deliver_info = SampleProduceOrderDeliverInfo::find('produce_order_id=?', $id)->one(); return array('base_info' => $base_info, 'deliver_info' => $deliver_info, 'paginate' => $paginate, 'sample_list' => $sample_list, 'sample_process_list' => $sample_process_list); }
public function index() { $process_list = array(); $all_process = WorkProcess::find()->all(true); $all_process = array_group($all_process, 'work_stage_id'); foreach (WorkStage::$work_stage_list as $stage_id => $name) { $rs = array(); $ps = $all_process[$stage_id] ?: array(); array_orderby($ps, 'ord', SORT_DESC); foreach ($ps as $p) { $rs[] = new WorkProcess($p); } $process_list[$stage_id] = $rs; } return array('process_list' => $process_list); }