where('type','bill')->findAll(); foreach( $result as $row){ $data = array(); $data['booking_id'] = $row->id; $data['category_id'] = $row->target_id; $data['comment'] = $row->comment; $data['subamount'] = $row->amount; $details->insert($data); $bills->update($row->id,['type'=>'multiple']); echo $row->id; echo "\n"; } $result = $bills->where('type','transfer')->findAll(); foreach( $result as $row){ $data = array(); $data['booking_id'] = $row->id; $data['category_id'] = $row->target_id; $data['comment'] = $row->comment; $data['subamount'] = $row->amount; $details->insert($data); echo $row->id; echo "\n"; } } // only with old database style public function convertScheduled(){ $scheduled = model('App\Models\mScheduled'); $accounts = model('App\Models\mAccounts'); $result = $scheduled->findAll(); foreach( $result as $row){ $book = new \Booking; $book = unserialize($row['billdata']); $zeilendata = $book->getData(); // if ($book->getType() == 'transfer'){ // echo "\n
"; // print_r($zeilendata); // } // if ($book->getType() == 'multiple'){ // echo "\n
"; // print_r($book->getBookingDetails()); // } //echo "\n\n

"; $data = $this->loadFormDefaults(); $data['id'] = $zeilendata['id']; $data['source'] = $zeilendata['source_id']; $data['datum'] =$zeilendata['datum']; $data['multi'] = $book->getType() == 'multiple'; $data['transfer'] = $book->getType() == 'transfer'; $data['validate'] = true; $data['scheduled'] = true; switch ($row['interval']) { case '2weekly': $data['scheduledNum'] = 2; $data['scheduledType'] = 'week'; break; case 'monthly': $data['scheduledNum'] = 1; $data['scheduledType'] = 'month'; break; case '2monthly': $data['scheduledNum'] = 2; $data['scheduledType'] = 'month'; break; case '3monthly': $data['scheduledNum'] = 3; $data['scheduledType'] = 'month'; break; case '6monthly': $data['scheduledNum'] = 6; $data['scheduledType'] = 'month'; break; case 'yearly': $data['scheduledNum'] = 1; $data['scheduledType'] = 'year'; break; } $data['receiver'] = $zeilendata['receiver']; $data['total_in'] = ($zeilendata['amount'] >= 0.0)?abs( $zeilendata['amount'] ):''; $data['total_out'] = ($zeilendata['amount']< 0.0)?abs( $zeilendata['amount'] ):''; if (($book->getType() == 'bill')||($book->getType() == 'transfer')){ $data['input'][0] = $data['total_in']; $data['output'][0] = $data['total_out']; $data['comment'][0] = $zeilendata ['comment']; $data['category'][0] = $zeilendata['target_id']; } else{ echo "\n
";$i=0; foreach($book->getBookingDetails() as $detail){ echo "\n
"; print_r($detail->getData(array())); $data['category'][$i] = $detail->getCategoryId(); $data['input'][$i] = $detail->getAmountIn(); $data['output'][$i] = $detail->getAmountOut(); $data['comment'][$i] = $detail->getComment(); $i++; } } unset($data['category_parent']); $scheduled->update($row['id'],['data'=>json_encode($data)]); } echo "Done"; } } ?>