преобразовать массив в объектную форму orm и перейти на нумерацию страниц в cakephp 3 - PullRequest
0 голосов
/ 07 октября 2018

У меня есть массив, который я должен перейти на нумерацию страниц.Так, как я могу преобразовать массив в объект ORM, чтобы установить в нумерацию страниц?

Я не могу $ this-> paginate = [];потому что я должен применить некоторые foreach и условия, поэтому я сначала все нашел.

            $allProductData = $this->PurchaseRequisitionProducts->find('all',[
                'contain' => ['PurchaseRequisition','PurchaseOrderProducts'=>function($c){
                if($c==null){ return null; }
                return $c->where(['PurchaseOrderProducts.id IS NOT NULL']);
                },'PurchaseOrderProducts.PurchaseOrder'=>function($p){
                    return $p->where(['PurchaseOrder.id IS NOT NULL'])
                    ->where(['PurchaseOrder.is_approve'=>"Y"])
                    //->where(['PurchaseOrder.status'=>1])
                    ->where(['PurchaseOrder.po_type'=>1]);
                },'PurchaseOrderProducts.PurchaseOrder.CompanyMaster'] ,
                'conditions'=>[$condn,$conditions,'PurchaseRequisition.ready_for_inquiry'=>'Y','PurchaseRequisition.owner_company_id'=>$ownercomp],
                'order'=>["PurchaseRequisitionProducts.id"=>"desc"],
                ])->toArray();
                if($allProductData){
                    foreach($allProductData as $key1=>$prProd){                            
                        if(isset($prProd['purchase_order_products'])){
                            $supplier=[];
                            foreach($prProd['purchase_order_products'] as $key2=>$poProd){
                              $supplier[]=$poProd['purchase_order']['supplier_id'];
                                //debug($supplier);
                                $companies= $this->CompanyMaster->find('list', [
                                    'keyField' => 'id','valueField' => 'Company_name',
                                    'conditions'=>['id IN'=>$supplier],
                                ])->toArray();
                                $allProductData[$key1]['supplier']=$companies;
                            }

                        }
                    }
                }

   $pr_product = $this->paginate($allProductData)
...